from django.contrib import admin

# Register your models here. 这里表示此模块需要使用官方的后台管理模块，可以在这里注册模型
from .models import Category  # 导入Category模型

# 自定义Category的管理类（控制Admin界面的显示和操作）
class CategoryAdmin(admin.ModelAdmin):
    # 1. 列表页显示的字段（默认只显示模型的__str__返回值）
    list_display = ['id', 'name', 'description', 'created_at']  # 显示ID、名称、描述、创建时间

    # 2. 支持通过哪些字段搜索（在列表页顶部显示搜索框）
    search_fields = ['name', 'description']  # 可通过名称或描述搜索类别

    # 3. 支持通过哪些字段筛选（在列表页右侧显示筛选器）
    list_filter = ['created_at']  # 可按创建时间筛选（如“今天”“本周”）

    # 4. 列表页默认排序（按创建时间倒序，最新的在前面）
    ordering = ['-created_at']

    # 5. 详情页的字段布局（将字段分组，更清晰）
    fieldsets = (
        ('基本信息', {
            'fields': ('name',)  # 第一组：仅包含“名称”字段
        }),
        ('补充信息', {
            'fields': ('description',),  # 第二组：包含“描述”字段
            'classes': ('collapse',)  # 可折叠（默认隐藏，点击展开）
        }),
    )

# 注册Category模型，并关联自定义的管理类
admin.site.register(Category, CategoryAdmin)
